Форум программистов, компьютерный форум, киберфорум
Python 3
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о построении дерева родительских отношений в PyQt (часть 7)
Запись от iamvic размещена 23.10.2024 в 16:14 / К вопросу о ...
Показов 1210 Комментарии 0
Метки pyqt5, python, python 3

Ещё со времён написания заметки К вопросу о построении дерева родительских отношений в PyQt (часть 2) меня не покидала мысль, что было бы весьма неплохо сделать некую демонстрационную программку, которая по задаваемым пользователем параметрам:

- создавала бы требуемый модальный диалог на базе одного из стандартных...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о построении дерева родительских отношений в PyQt (часть 6)
Запись от iamvic размещена 16.10.2024 в 12:22 / К вопросу о ...
Показов 981 Комментарии 0
Метки pyqt5, python, python 3

Новый вариант, наверное, уже можно назвать приближённым к тому, что задумывалось. Хотя, конечно, пока всё ещё очень сырое и вопросов больше, чем ответов, но надежда есть . По крайней мере, в текущем исполнении слайд-шоу собирается и отображается корректно.

Картинка для привлечения внимания:
Нажмите на изображение для увеличения
Название: eter_slide_show1.jpg
Просмотров: 348
Размер:	21.1 Кб
ID:	8998

Состав пакета (4 файла):

eter_slide_show.py
Python
1
2
3
4
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# Eter Slide Show
...
Старый
К вопросу о построении дерева родительских отношений в PyQt (часть 5)
Запись от iamvic размещена 24.09.2024 в 16:23 / К вопросу о ...
Показов 1018 Комментарии 0
Метки pyqt5, python, python 3

Изменений накопилось достаточно, благодаря ценным замечаниям voral и, как ни странно, ёмкой формулировке кадровика о том какую роль играет назначение родителей при построении графического интерфейса, поставившей точку в споре моих подопечных . Формулировку кадровика повторять не буду, просто добавлю свои комментарии в тексте одного из виджетов для понимания происходящего.

А вернуться придётся к тому, с чего всё и начиналось.

Испытательную программу scroll_mentor.py...
Старый
К вопросу о транспонировани­­и...
Запись от iamvic размещена 09.09.2024 в 15:14 / К вопросу о ...
Показов 1801 Комментарии 8
Метки python 3

Просто оставлю это здесь в качестве памятки. Заниматься-то транспонированием приходится крайне редко, а тут такой интересный эффект обнаружился с транспонированием списка строк (смотри К вопросу о построении дерева родительских отношений в PyQt (часть 4)). Прямого упоминания о такой возможности я как-то даже и не нашёл (видимо, считается само собой разумеющимся, а для меня оказалось сюрпризом)....
Старый
К вопросу о построении дерева родительских отношений в PyQt (часть 3)
Запись от iamvic размещена 30.06.2024 в 22:05 / К вопросу о ...
Показов 1124 Комментарии 3
Метки pyqt5, python, python 3

Чтобы разобраться во всём происходящем, надо просто посмотреть, как формируются исходные данные для построения дерева:

1. строится цепочка дочерних объектов корневого виджета
2. каждый объект в цепочке может узнать непосредственного родителя вызовом собственного...
Старый
К вопросу о построении дерева родительских отношений в PyQt (часть 2)
Запись от iamvic размещена 28.06.2024 в 19:26 / К вопросу о ...
Показов 1264 Комментарии 0
Метки pyqt5, python, python 3

Как говорится, любопытство сгубило кошку Вот погонял я придуманный инструмент на своих поделках (в том числе и выполненных в системе разделения труда) и всё мне нравилось. Но взбрело же в голову посмотреть в сторону стандартных диалогов. Их же настоящие профи делали. Любопытно же, там-то как всё устроено? И, недолго думая, слепил очередной тест:

stddlg_inspect.py
Python
1
2
3
4
5
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# StdDlg Inspect v0.01
import sys
...
Старый
К вопросу о построении дерева родительских отношений в PyQt...
Запись от iamvic размещена 06.06.2024 в 20:36 / К вопросу о ...
Показов 1467 Комментарии 3
Метки pyqt5, python, python 3

Как уже говорилось в предыдущей записи блога построение дерева родительских отношений является неплохим подспорьем для понимания того "как на самом деле всё там внутри устроено". А поскольку исполнителям быстро надоедает рисовать эти схемы, то неплохо было бы иметь возможность генерировать их программным способом.

Например, предложенное...
Старый
К вопросу о применении QScrollArea...
Запись от iamvic размещена 30.05.2024 в 19:09 / К вопросу о ...
Показов 1290 Комментарии 3
Метки pyqt5, python, python 3

Недавно в теме Не работает прокрутка виджета с помощью QScrollArea предложил своё решение.

Никакой реакции это не вызвало, но как-то обосновать всё, что там наворочено, всё-таки надо. Делаю это здесь. Ведь за редкостью использования непременно что-нибудь забудется, а виджет QScrollArea - непростой, обязательные "па...
Старый
К вопросу о "mobilis in mobile" в Qt Designer...
Запись от iamvic размещена 01.04.2024 в 11:22 / К вопросу о ...
Показов 1376 Комментарии 1

Поскольку день сегодня такой (да ещё и понедельник ), то не мог не озадачиться вопросом проверки поведения скроллируемых виджетов (см. предыдущую тему) на некой модельке. Интересно же, как это будет выглядеть живьём?

Нажмите на изображение для увеличения
Название: scroll_split_mod.jpg
Просмотров: 300
Размер:	28.1 Кб
ID:	8617

Вариант дизайнерский (на скорую руку, лишь бы поиграться и как-то оценить):

командная строка
Bash
1
py scroll_split_ui.py
scroll_split_ui.py
Python
1
2
#!/usr/bin/python3
# -*- coding: utf-8
...
Старый
К вопросу о соразмерности виджетов разрешению экрана...
Запись от iamvic размещена 04.03.2024 в 17:02 / К вопросу о ...
Показов 1717 Комментарии 9

Поучаствовал тут в разборках интересного казуса, как раз подходящего для Памятки. Суть-то в том, что версии HDMI весьма различны и в ряде случаев высоконасыщенный элементами управления виджет, разработанный под последнее слово техники, может просто не влезть на экран в случае замены штатного монитора на старенький резервный с гораздо меньшим разрешением.

Оказалось, что можно попробовать использовать скроллинг для таких случаев
Нажмите на изображение для увеличения
Название: scroll_probe_tz.jpg
Просмотров: 239
Размер:	17.2 Кб
ID:	8582
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о применении таблиц стилей в PyQt-приложениях (2).
Запись от iamvic размещена 03.02.2024 в 10:51 / К вопросу о ...
Показов 1206 Комментарии 0
Метки pyqt5, python, python 3, qss

Всё-таки предыдущая тема потребовала продолжения. Хоть и занят был изрядно, но что-то зудело будто лопухнулся я где-то . И, как говорится, предчувствия меня не обманули - ошибка просто детская, неофитская. Надо памятку написать, за редкостью использования всякие тонкости забываются.

А, с другой стороны, если бы там сразу в тексте программы вместо оператора
Python
1
            self.setStyleSheet('background-color: salmon;')
употребил
Python
1
            self.setStyleSheet(
...
Старый
Рейтинг: 1.86. Голосов: 7.
К вопросу о применении таблиц стилей в PyQt-приложениях.
Запись от iamvic размещена 28.12.2023 в 23:25 / К вопросу о ...
Показов 2242 Комментарии 0
Метки pyqt5, python, python 3, qss

В документации как-то не особо акцентируется внимание на том, что приёмы нанесения боевой раскраски на элементы GUI можно разделить на два крайних случая.

В первом случае, загрузка и установка всех таблиц стилей выполняется сразу после старта приложения и действие...
Старый
Рейтинг: 1.33. Голосов: 3.
К вопросу о PyQt и самописных виджетах в Qt Designer.
Запись от iamvic размещена 21.12.2023 в 14:27 / К вопросу о ...
Показов 1266 Комментарии 0

Иногда, работая над каким-нибудь проектом, приходится сталкиваться с ситуацией, когда в различных окнах (диалогах) часть информации, включая элементы управления, полностью дублируется. Эту общую часть вполне можно оформить в виде отдельного класса на базе QWidget и применять его при создании соответствующих окон (диалогов). Например, так, как это сделано в демонстрационной программе, представленной в теме К вопросу о наследовании QWidget и таблицах стилей.

А как быть, если...
Старый
Рейтинг: 2.00. Голосов: 3.
К вопросу о том, какой дизайнер нужен...
Запись от iamvic размещена 22.11.2023 в 14:16 / К вопросу о ...
Показов 1467 Комментарии 3

Если задаться вопросом "Кто способен реализовать программный проект сам, один и без ансамбля?", то можно дать однозначный ответ "это программист" .

У программиста может быть масса недостатков, например, отсутствие художественного вкуса, однобокое знание иностранных языков, невнятная речь, профессиональное...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о неявном назначении родительской опеки...
Запись от iamvic размещена 03.11.2023 в 14:21 / К вопросу о ...
Показов 1487 Комментарии 0
Метки pyqt5, python, python 3

Поучаствовав в обсуждении темы Обновление содержимого в QGroupBox по клику кнопки, вспомнилось мне, что PEP8 рекомендует очень аккуратно решать вопрос
должны ли методы и переменные экземпляра класса (в совокупности: «атрибуты») быть общедоступными или закрытыми (непубличными). Если сомневаетесь, выберите непубличный; позже его легче сделать общедоступным, чем сделать общедоступный атрибут закрытым.
Тем более, что кандидат на опыты есть (см.К вопросу об отслеживании содержимого буфера обмена)...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу об отслеживании содержимого буфера обмена
Запись от iamvic размещена 13.08.2023 в 15:08 / К вопросу о ...
Показов 1388 Комментарии 0
Метки clipboard, pyqt5, python, python 3

А ведь презанятнейшая вещица получилась с подачи Pyther01001 после допиливания до товарного вида первоначального чернового наброска из Работа с clipboard в потоке. Похоже, что очень даже может пригодиться эта поделка:.

clipboard_probe.py
Python
1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# Clipboard Probe v0.002
import sys
from PyQt5 import (
    QtCore,
    QtGui,
    QtWidgets
    )
 
APP_NAME = 'Clipboard
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу об аналоге заставки при старте PyQt-приложений
Запись от iamvic размещена 01.08.2023 в 14:18 / К вопросу о ...
Показов 1200 Комментарии 0

Однако, весьма неожиданно пришлось лезть сюда в "склерозник", чтобы память освежить, что там у меня было понаписано на заданную тему К вопросу об экранной заставке при старте PyQt-приложений

Даже пришлось каноническую модельку переписать, чтобы помочь человеку внятно изложить свои претензии и желания.

Суть модельки проста - имитируется...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о языковой поддержке в условиях разделения труда...
Запись от iamvic размещена 20.07.2023 в 20:00 / К вопросу о ...
Показов 2046 Комментарии 11

Уж, не знаю почему, но при обсуждении вопросов, возникающих во время написания многоязычных приложений, достаточно часто можно услышать следующую сентенцию, выдаваемую за истину в последней инстанции: "Все требующие перевода литеральные строки (тексты) должны быть записаны...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"... (часть 4 и последняя)
Запись от iamvic размещена 29.06.2023 в 11:46 / К вопросу о ...
Показов 1393 Комментарии 1
Метки opensuse, pyqt5, python, python 3

Предыдущие серии прелюдия, часть 1. часть 2. часть 3.

Ну, блин, ржу не могу!!! Ведь только перечитав то, что я понаписал в третьей части этого сериала, до меня дошло, что и в первой, и во второй частях речь тоже идёт о безобразиях, творимых таким же навязанным системой недекларируемым сервисом,...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"... (часть 3)
Запись от iamvic размещена 26.06.2023 в 22:46 / К вопросу о ...
Показов 1259 Комментарии 0
Метки opensuse, pyqt5, python, python 3

Предыдущие серии: прелюдия, часть 1, часть 2

Надо сразу сказать, что добиться от OpenSUSE более-менее вменяемого поведения, наверное, можно только установкой английского в качестве языка системы (системной локали). Во всех остальных случаях навязываемый системой неафишируемый сервис приводит...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"... (часть 2)
Запись от iamvic размещена 19.06.2023 в 15:02 / К вопросу о ...
Показов 1239 Комментарии 0
Метки opensuse, pyqt5, python, python 3

Поскольку часть 1 завершилась словами
проверить надо, что там Qt Designer творит в таких условиях
то един в трёх лицах (руководитель проекта, программист, дизайнер) ставлю задачу от лица руководителя (канцелярит рулит!!!):
1. целью проекта является наглядная демонстрация факта искажения текста элементов...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"...
Запись от iamvic размещена 18.06.2023 в 15:59 / К вопросу о ...
Показов 1214 Комментарии 0
Метки opensuse, pyqt5, python, python 3

Тема, начатая в заметке К вопросу о локализации приложений PyQt, всё-таки потребовала продолжения. Огромное спасибо коллеге vic5710, написавшему замечательный код Рисование в отдельном окне по параметрам, заданным в текстовых окнах, работающий практически везде (и под Windows, и под MacOs, и под Linux разных сортов), за одним найденным исключением - он абсолютно неработоспособен под OpenSUSE...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о применении модуля tokenize.
Запись от iamvic размещена 11.03.2023 в 21:47 / К вопросу о ...
Показов 1186 Комментарии 0
Метки python, python 3, tokenize

Никогда не знаешь - где найдёшь, где потеряешь Пару лет назад разбирался я с модулем tokenize, пытаясь понять, что из него можно выдавить, и даже приложение кое-какое написал на тему разложения файлов *.py на токены и обратной их сборки из токенов с целью приведения отступов к требованиям...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о разделении труда (часть 4 и последняя).
Запись от iamvic размещена 14.02.2023 в 11:34 / К вопросу о ...
Показов 1590 Комментарии 0

Ну, вот, настало время развязаться с этой моделькой. Все поставленные задачи выполнены:
- смоделирована работа в условиях системы разделения труда,
- показано, что для проведения работ по интернационализации не требуется, чтобы исходное приложение было обязательно...
Старый
Рейтинг: 1.00. Голосов: 2.
К вопросу о разделении труда (часть 3).
Запись от iamvic размещена 09.02.2023 в 16:24 / К вопросу о ...
Показов 1769 Комментарии 1

Что-то как-то в прошлый раз затупил я не по-детски с устатку и чуть не упустил ту шикарную идею, которую Welemir1 предложил в комментариях к первой части:
Цитата Сообщение от Welemir1
Просится же код на вынос в общую функцию куда просто передаем ен или ру или ес/тр/бл чтобы программа поискала такой файлик в нужной папочке и если есть подгрузила нужный язык, если нет взяла дефолтный.
Огромное спасибо, Welemir1, с меня причитается

А реализация этой...
Старый
Рейтинг: 3.00. Голосов: 2.
К вопросу о предварительном просмотре дизайна.
Запись от iamvic размещена 23.12.2022 в 22:33 / К вопросу о ...
Показов 1754 Комментарии 0

Пока возился с Qt Designer-ом, понял, что жутко не хватает простого приложения для просмотра результата творческих усилий . Конечно, можно всё это посмотреть прямо в Qt Designer-е, но он как-то слишком тяжеловесен и избыточен для этих целей. Хотелось чего-нибудь такого, лёгкого - выбрал...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о разделении труда (часть 2).
Запись от iamvic размещена 10.11.2022 в 22:42 / К вопросу о ...
Показов 1307 Комментарии 0

Начало здесь.

Этап 3

И вот в команде уже двое - программист и переводчик, но для кворума явно не хватает третьего - дизайнера Недолго думая, ваяем дизайн главного окна:

team_mwin.ui
Code
1
2
3
4
5
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>main_window</class>
 <widget class="QMainWindow" name="main_window">
  <property
...
Старый
Рейтинг: 3.00. Голосов: 1.
К вопросу о разделении труда (часть 1).
Запись от iamvic размещена 07.11.2022 в 23:20 / К вопросу о ...
Показов 2790 Комментарии 3

Понаблюдав тут в одной конторке за необычно оживлённой суетой, возникшей на почве острой необходимости перевода сайта на иностранный язык, подумал "А как это будет выглядеть с PyQt-приложениями?" Ведь все инструменты для безболезненного решения проблемы есть, а опыта нет. Надо пробовать, надо делать демонстратор.

В качестве донора для демонстратора была выбрана простейшая поделка из По итогам определения начального экрана при старте приложения.

Этап 1
...
Старый
Рейтинг: 2.00. Голосов: 1.
К вопросу о дизайне.
Запись от iamvic размещена 05.10.2022 в 23:08 / К вопросу о ...
Показов 1529 Комментарии 0

Редко пользуюсь Qt Designer-ом, поэтому всё время забываю первое правило дизайнера Сначала выложи весь расклад и только потом пакуй.

Например, для создания нижеприведённого файла дизайна (example.ui):
Code
1
2
3
4
5
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>MainWindow</class>
 <widget class="QMainWindow" name="MainWindow">
  <property name="geometry">
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о поведении окон верхнего уровня PyQt-приложений.
Запись от iamvic размещена 25.09.2022 в 22:24 / К вопросу о ...
Показов 1533 Комментарии 0
Метки pyqt5, python, python 3, qt5

Есть один неловкий момент, когда поведение окон верхнего уровня, определяемое соглашениями о пользовательском интерфейсе, вызывает у пользователей неприятие, поскольку противоречит их инстинктивным ожиданиям.

И в самом деле, запустив некое приложение на дополнительном...
Новые блоги и статьи
Администрация Хабра удаляет новые алгоритмы, которые не западно ориентированной философии кода, без уведомлений и объяснений.
Hrethgir 20.06.2026
Делается это, как замечено, при правках - при объявлении концептуальных отличий в алгоримах. Делается это, по линейке событий - после дополнения публикации основными отличиями от основных западных. . .
Процесс ориентированная диалектика (не новость - просто системное обновление, философия).
Hrethgir 20.06.2026
Однажды один участник в своём блоге, на этом форуме, сделал запись "О языках замолвите слово". Понимая, что язык - важная вещь, я решил хорошо подумать, прежде чем сказать, и сказал то, что вы видите. . .
Контроль уникальности строк в табличной части документа
Maks 18.06.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ПланированиеСпецтехники" с табличной частью "НаличиеОборудования", разработанного в КА2. Задача: контроль уникальности строк в. . .
Клиент
Uhbif79 18.06.2026
Здесь простой клиент для работы с сервером.
Сервер
Uhbif79 18.06.2026
Выкладываю простейший сервер.
Дефенестрация
kumehtar 18.06.2026
Узнал интересное слово. Дефенестрация. Это когда ты выбрасываешь кого-либо или что-либо из окна. Возьму на вооружение)))
Дихотомия добра и зла
kumehtar 18.06.2026
Как Дзен-буддисты говорят о добре и зле: не нужно воевать против зла, нужно воевать против невежества. Тогда добро станет ествественным, и поэтому вечным. Но дело в том, что невежество всё время. . .
Своя Интернет-Компания
iceja 18.06.2026
Я программист с экономическим образованием, пишу свой проект, это SaaS для бизнесов. Мне нужен co-founder с высшим экономическим образованием, и/ или инвестор. Сейчас проект в интенсивной разработке,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru